package br.com.ac.fatureweb.integration.enums;

/**
 * 
 * @author José Braga Neto[josebraga.neto@cagece.com.br] 09/04/2014 - 13:57:53.
 * 
 */
public enum EnumSincronizacaoTabelas
{
	Roteiro(1, "Roteiro"),

	AnaliseAgua(2, "Análise de Água"),

	AvisoDebito(3, "Aviso de Débito"),

	ConfiguracaoCalculo(4, "Config. Cálculo"),

	ConfiguracaoSaae(5, "Config. SAAE"),

	Debito(6, "Débito"),

	Economia(7, "Economia"),

	Historico(8, "Histórico"),

	Imovel(9, "Imóvel"),

	LancamentoFuturo(10, "Lançamento Futuro"),

	Mensagem(11, "Mensagem"),

	Ocorrencia(12, "Ocorrência"),

	SaldoDebitoCredito(13, "Saldo Déb./Créd."),

	TarifaSocial(14, "Tarifa Social"),

	Tarifa(15, "Tarifa"),
	
	Faixa(16, "Faixa"),
	
	/*
	 * Retorno
	 */
	Conta(17, "Conta"),
	
	Fatura(18, "Fatura"),
	
	LancamentoCobrado(19, "Lançamento Cobrado"),
	
	LogCorrecaoConta(20, "Correção de Conta"),
	
	LogLeitura(21, "Log de Leitura"),
	
	Produto(22, "Produto"),
	
	Valor(23, "Valor"),
	
	Volume(24, "Volume"),
	
	RetornoPendente(25, "Retorno Pendente"),
	
	CorrecoesPendentes(26, "Correções Pendentes"),
	
	Fotografia(27, "Fotografia(s)"),
	
	BackupRoteiro(28, "Backup do Roteiro");
	
	private int codigo;

	private String descricao;

	EnumSincronizacaoTabelas(final int codigo, final String descricao)
	{
		this.codigo = codigo;
		this.descricao = descricao;
	}

	public int getCodigo()
	{
		return codigo;
	}

	public void setCodigo(final int codigo)
	{
		this.codigo = codigo;
	}

	public String getDescricao()
	{
		return descricao;
	}

	public void setDescricao(final String descricao)
	{
		this.descricao = descricao;
	}

	/**
	 * 
	 * @author José Braga Neto[josebraga.neto@cagece.com.br] 26/03/2014 -
	 *         15:02:22.
	 * @param codigo
	 * @return
	 */
	public static EnumSincronizacaoTabelas getValueOf(final int codigo)
	{
		for (final EnumSincronizacaoTabelas tipoListaAuxiliar : EnumSincronizacaoTabelas
				.values())
		{
			if ( tipoListaAuxiliar.getCodigo() == codigo )
			{
				return tipoListaAuxiliar;
			}
		}

		return null;
	}
}